package com.yh.javabean;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.stereotype.Controller;

import javax.annotation.PostConstruct;
import javax.annotation.PreDestroy;

/**
 * @Auther: Liang
 * @Date: 2024/5/13 - 05 - 13 - 14:50
 * @Description: com.yh.javabean
 * @version: 1.0
 */
@NoArgsConstructor
@AllArgsConstructor
@Data

//组件自动装配
//基于spring核心配置文件扫描的路径 加载扫描所有类 识别注解生成配置
//@Component//等价于Bean标签的配置  默认会使用类名首字母小写进行定义
//Component Controller Service Repository 功能一样 只不过通过不同名字的定义
//区分交由spring容器管理对象的功能

@Controller(value = "s2")
public class Student {
    private int id;
    private String name;
    private int age;

    //生命周期配置需要额外创建初始化与销毁方法
    @PostConstruct
    public void init (){
        System.out.println("teacher初始化");
    }
    @PreDestroy
    public void destroy(){
        System.out.println("teacher销毁");
    }

}
